A mobile device requires the establishment of a radio access bearer in order to communicate with the wireless network infrastructure. Furthermore, some devices allow the establishment of multiple radio access bearers for communications. In one instance, multiple radio access bearers can be dependent on the device requiring multiple packet data protocol (PDP) contexts. Thus, for example, a device may have a proprietary PDP context for the manufacturer of the device, a general wireless application protocol (WAP) context for browsing, a multimedia messaging service (MMS) PDP context for MMS applications, a streaming media PDP context for streaming media applications, among others. As will be appreciated, a PDP context is a term that is generally referred to in the third generation partnership project (3GPP) and more generally the term “tunnel” is used herein to refer to a data connection to a particular network.
Tunnels can be prioritized and if the number of tunnels that are allowed is less than the total number desired tunnels, the highest priority services will gain access to the tunnels.
If a closed tunnel is given access to a connection slot, the tunnel attempts to establish the connection. However, if a connection establishment fails, the non-connected tunnel holds on to the connection slot and waits for a retry time prior to trying to establish the connection again. The retry time may be progressive and thus the retry time may have a first value for a second connection attempt, a second value for a third connection attempt, up to a maximum time value. For example, if the connection establishment fails, the mobile device may wait 15 seconds before trying to establish the connection again. If this again fails, the back-off timer may be set to 30 seconds. The values may increase up to a maximum value. For example, the values could be 15 seconds, 30 seconds, 1 minute, 2 minutes, 4 minutes, 8 minutes and 15 minutes. Subsequent attempts to establish the connection will occur every 15 minutes.
During the back-off time, the connection slot may be held by the service trying to establish the connection.